package com.logic.modular.gameCore.cultivate.signIn.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;
import java.util.Map;

import com.comment.config.dao.typeHandler.KV_LongLong_Handler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

/**
 * (CoreSignInAward)表实体类
 *
 * @author cxy
 * @since 2025-01-04 14:53:28
 */
@ApiModel("$tableInfo.comment")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@EqualsAndHashCode(callSuper = true)
@TableName(autoResultMap = true)
public class CoreSignInAward extends Model<CoreSignInAward> {// swagger2,mybatis-plus
    ///////////////////////////////////////////////////////////////////////////////////////////////////////// 生成实体字段
    @TableId(type = IdType.AUTO)
    @ApiModelProperty("id")
    private Long id;
    
    @ApiModelProperty("签到天数")
    private Long day;

    @ApiModelProperty("奖励1")
    @TableField(typeHandler = KV_LongLong_Handler.class)
    private Map<Long, Long> award1;
    
    @ApiModelProperty("签到方式 1.总签到数 2.连续签到")
    private Integer type;
    
    @ApiModelProperty("分类 7:七日签到 , 30:30天签到")
    private Integer grouping;
    
    ///////////////////////////////////////////////////////////////////////////////////////////////////////// 序列化版本号
    @TableField(exist = false)
    private static final long serialVersionUID = 253667780071342914L;
    /////////////////////////////////////////////////////////////////////////////////////////////////////////// 获取主键值
    @Override
    public Serializable pkVal() {
        return this.id;
    }
    ///////////////////////////////////////////////////////////////////////////////////////////////////////  基础数据初始化
    public CoreSignInAward init() {
        return this;
    }
    /////////////////////////////////////////////////////////////////////////////////////////////////////////// 领域业务
}

